package com.yuehuanghun.admin.generator.config;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;

/**
 * 读取代码生成相关配置
 * 
 * @author yadmin
 */
@Component
@ConfigurationProperties(prefix = "gen")
@PropertySource(value = { "classpath:generator.yml" })
public class GenConfig {
	/** 作者 */
	public static String author;

	/** 生成包路径 */
	public static String packageName;
	
	/** 模块名 */
	public static String moduleName;

	/** 自动去除表前缀，默认是false */
	public static boolean autoRemovePre;

	/** 表前缀(类名不会包含表前缀) */
	public static String tablePrefix;
	
	/** 数据库Schema，oracle必须设值 */
	public static String dbSchema;

	/** 数据库Category */
	public static String dbCatalog;

	public static String getAuthor() {
		return author;
	}

	@Value("${author}")
	public void setAuthor(String author) {
		GenConfig.author = author;
	}

	public static String getPackageName() {
		return packageName;
	}

	@Value("${packageName}")
	public void setPackageName(String packageName) {
		GenConfig.packageName = packageName;
	}

	public static String getModuleName() {
		return moduleName;
	}

	@Value("${moduleName}")
	public void setModuleName(String moduleName) {
		GenConfig.moduleName = moduleName;
	}

	public static boolean getAutoRemovePre() {
		return autoRemovePre;
	}

	@Value("${autoRemovePre}")
	public void setAutoRemovePre(boolean autoRemovePre) {
		GenConfig.autoRemovePre = autoRemovePre;
	}

	public static String getTablePrefix() {
		return tablePrefix;
	}

	@Value("${tablePrefix}")
	public void setTablePrefix(String tablePrefix) {
		GenConfig.tablePrefix = tablePrefix;
	}

	public static String getDbSchema() {
		return dbSchema;
	}

	@Value("${dbSchema}")
	public void setDbSchema(String dbSchema) {
		GenConfig.dbSchema = dbSchema;
	}

	
	public static String getDbCatalog() {
		return dbCatalog;
	}

	@Value("${dbCatalog}")
	public void setDbCatalog(String dbCatalog) {
		GenConfig.dbCatalog = dbCatalog;
	}
}
